Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

stdenv: switch default from gcc10 to gcc11 #174282

Merged
merged 1 commit into from
Sep 10, 2022

Conversation

fabianhjr
Copy link
Member

@fabianhjr fabianhjr commented May 24, 2022

Description of changes

This will mainly affect i686 and ARM which is still using gcc10;

x86_64 (darwin and linux), RISC-V (linux), and aarch64 (darwin) are
already using gcc11 so this will remove their version override.

aarch64 (linux), vc4, and relibc will remain pinned to previous versions
due to unresolved issues.

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.05 Release Notes (or backporting 21.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

This will mainly affect ARM which is still using gcc10;

x86_64 (darwin and linux), RISC-V (linux), and aarch64 (darwin) are
already using gcc11 so this will remove their version override.

aarch64 (linux), vc4, and relibc will remain pinned to previous versions
due to unresolved issues.
@fabianhjr fabianhjr changed the title stdenv: switch default from gcc10 to gcc11 [staging] stdenv: switch default from gcc10 to gcc11 May 24, 2022
@fabianhjr fabianhjr requested review from vcunat and kevincox May 24, 2022 14:53
@vcunat

This comment was marked as resolved.

@fabianhjr fabianhjr marked this pull request as draft May 24, 2022 15:09
@fabianhjr
Copy link
Member Author

The platforms that changed version would be ARM and i686 (need testing)

I tested x86_64 linux and had to rebuild a couple hundred or so packages and stdenv.

Would appreciate testing on other platforms like aarch64-linux (gcc9), x86_64-darwin, aarch64-darwin, riscv-linux, etc.

@vcunat
Copy link
Member

vcunat commented May 24, 2022

I tested x86_64 linux and had to rebuild a couple hundred or so packages and stdenv.

I don't understand this line. Oh you meant you rebuilt those because you based on staging? (as this commit doesn't switch that)

i686-linux couldn't make this recently, but I have a vague memory that the issue has been fixed in the meantime. I'm already rebuilding wine which I used earlier to run into the problem.

@fabianhjr
Copy link
Member Author

I don't understand this line. Oh you meant you rebuilt those because you based on staging? (as this commit doesn't switch that)

This commit is on top of master (not staging) unsure why I had a stdenv rebuild and a couple hundred rebuilds though.

@vcunat
Copy link
Member

vcunat commented May 24, 2022

No (stdenv) rebuild on x86_64-linux for me (or OfBorg).

@fabianhjr
Copy link
Member Author

Ah maybe I catched the merge of staging-next into master, its good to know that this doesn't cause a mass-rebuild/stdenv-rebuild.

@vcunat
Copy link
Member

vcunat commented May 24, 2022

That had binaries in cache.nixos.org long before the merge. (except for aarch64-linux)

@SuperSandro2000
Copy link
Member

If we stay in not red rebuilds we could easily merge this into master if you want. I don't think there is much testing for platforms other the two darwins and linux x86_64 and aarch64 on staging anyway.

@vcunat
Copy link
Member

vcunat commented May 24, 2022

wine built fine for me (over 700 builds, uh), so i686-linux is probably good to go. I don't know if someone can test 32-bit ARM.

@fabianhjr
Copy link
Member Author

Maybe someone from @NixOS/mobile-nixos ?

@fabianhjr fabianhjr marked this pull request as ready for review May 24, 2022 18:54
@fabianhjr fabianhjr changed the base branch from staging to master May 24, 2022 20:28
@fabianhjr fabianhjr changed the title [staging] stdenv: switch default from gcc10 to gcc11 stdenv: switch default from gcc10 to gcc11 May 24, 2022
@misuzu
Copy link
Contributor

misuzu commented Jun 25, 2022

boehm-gc tests are broken on armv7l with gcc11: https://gist.github.com/misuzu/46c4eb4387676124054f7e20a252554b
Maybe related: ivmai/bdwgc#428 (comment)

Copy link
Contributor

@misuzu misuzu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested building nix and git with this change on top of 74a1793 for armv7l-linux, both native & cross.
The issue with boehm-gc is gone now.

@vcunat vcunat changed the base branch from master to staging-next September 10, 2022 20:09
@vcunat vcunat merged commit 4897902 into NixOS:staging-next Sep 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants